package cn.milolab.djback.dao;

import cn.milolab.djback.bean.entity.User;
import org.springframework.stereotype.Repository;

/**
 * @author milowang
 */
@Repository
public interface UserDAO {
    /**
     * 使用id获取User实体
     *
     * @param id 用户的数据库id
     * @return 用户实体
     */
    User getUserById(Integer id);

    /**
     * 使用openid获取用户实体
     *
     * @param openid 用户的openid
     * @return 用户实体
     */
    User getUserByOpenid(String openid);

    /**
     * 插入一个用户实体记录
     *
     * @param user 要插入的用户实体，id须为null
     * @return 影响行数
     */
    Integer insertUser(User user);

    /**
     * 更新用户的头像链接
     *
     * @param userId    用户ID
     * @param avatarUrl 用户头像链接
     * @return 影响行数
     */
    Integer updateUserAvatar(Integer userId, String avatarUrl);
}
